package top.chmin.project.cloud.common.entity.column.auto;


import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * chmin
 * 2023-12-27 15:10:14
 * cloud-builder
 */
public interface EntityColumnSave {

    @PostMapping("/au/entityColumn/save")
    int save(@RequestBody Param param);

    @Getter
    @Setter
    @Accessors(chain = true)
    class Param {
        // 字段编码
        String fieldCode;
        // 列表是否启用
        String pageColumnExist;
        // 详情是否启用
        String detailExist;
        // 更新是否启用
        String updateExist;
        // 新增是否启用
        String saveExist;
        // 搜素是否启用
        String searchExist;
        // 列表排序
        Integer pageColumnOrder;
        // 弹窗排序
        Integer formOrder;
        // 列表查询排序
        Integer searchOrder;
        // 数据库排序
        Integer dataOrder;
        // 属性备注
        String remark;
        // 属性完整类型
        String fullType;
        // 属性简单类型
        String simpleType;
        // 方法名称
        String methodName;
        // 字段名称
        String columnName;
        // 属性名称
        String fieldName;
        // 字段null
        String columnNullable;
        // 小数精度
        Integer columnScale;
        // 数字位数
        Integer columnPrecision;
        // 字段长度限制
        Integer columnLength;
        // 字段数据类型
        String columnType;
        // 实体编码
        String tableCode;
    }

}
